package com.aliatry;

import com.aliatry.base64.Base64Main;
import com.aliatry.dateTimeApi.LocalDateTimeMain;
import com.aliatry.defaultKeyword.Animal;
import com.aliatry.defaultKeyword.Dog;

/**
 * @author Simon
 */
public class Application {
    public static void main(String[] args) throws Exception {
        defaultKeyword();

        base64();

        dateTimeApi();
    }

    /**
     * 默认⽅法: 接⼝⾥⾯定义⼀个默认⽅法, 这个接⼝的实现类实现了这个接⼝之后
     * default 修饰的⽅法就可以直接调⽤, 即接⼝⽅法的默认实现
     * <p>
     * 静态⽅法: 接⼝名.静态⽅法来访问接⼝中的静态⽅法
     */
    private static void defaultKeyword() {
        Dog dog = new Dog();
        dog.run();
        dog.eat();
        dog.breath();

        Animal.desc();
    }

    /**
     * base64编码
     */
    private static void base64() throws Exception {
        // 原始base64编码
        Base64Main.original();

        // jdk8 base64编码
        Base64Main.now();
    }


    private static void dateTimeApi() {
        LocalDateTimeMain.test();
    }
}
